// 给你一个整数数组nums，返回数组中最大数和最小数的最大公约数 。
// 两个数的最大公约数是能够被两个数整除的最大正整数。

// 示例 1：
// 输入：nums = [2,5,6,9,10]
// 输出：2
// 解释：
// nums 中最小的数是 2
// nums 中最大的数是 10
// 2 和 10 的最大公约数是 2

// 示例 2：
// 输入：nums = [7,5,6,8,3]
// 输出：1
// 解释：
// nums 中最小的数是 3
// nums 中最大的数是 8
// 3 和 8 的最大公约数是 1

// 示例 3：
// 输入：nums = [3,3]
// 输出：3
// 解释：
// nums 中最小的数是 3
// nums 中最大的数是 3
// 3 和 3 的最大公约数是 3

// int findGCD(int* nums, int numsSize) {}

#include <stdio.h>
#include <limits.h>

int gcd(int a, int b)
{
    while (b != 0)
    {
        int temp = b;
        b = a % b;
        a = temp;
    }
    return a;
}

int findGCD(int *nums, int numsSize)
{
    if (numsSize == 0)
        return 0;

    int minNum = INT_MAX;
    int maxNum = INT_MIN;

    for (int i = 0; i < numsSize; i++)
    {
        if (nums[i] < minNum)
            minNum = nums[i];
        if (nums[i] > maxNum)
            maxNum = nums[i];
    }
    return gcd(minNum, maxNum);
}

int main()
{
}
